package com.mercury.ec.framework.air.core.client.dto.search.rt;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;

import java.time.LocalDateTime;
import java.util.List;

/**
 * RT Response VO
 *
 * @author hesx
 */
@Schema(description = "管理后台 - RT Response DTO")
@Data
@ToString(callSuper = true)
public class AirRtRespDTO {

    @Schema(description = "订座PNR", example = "DSKLKK")
    private String pnr;

    @Schema(description = "预订office", example = "CAN121")
    private String bookOffice;

    @Schema(description = "出票office", example = "CAN121")
    private String issueOffice;

    @Schema(description = "编码状态", example = "HK")
    private String pnrStatus;

    @Schema(description = "航司PNR", example = "DSKLKK")
    private String bigPnr;

    @Schema(description = "是否为团队编码", example = "true")
    private Boolean team;

    @Schema(description = "编码中是否包含证件信息（提取其他 office 号编码，获取不到证件号，只能判断是否有证件号）", example = "true")
    private Boolean haveCard;

    @Schema(description = "是否携带婴儿", example = "true")
    private Boolean haveBaby;

    @Schema(description = "是否携带儿童", example = "true")
    private Boolean haveChild;

    @Schema(description = "是否儿童", example = "true")
    private Boolean child;

    @Schema(description = "备注项", example = "备注项")
    private String remark;

    @Schema(description = "osi项", example = "osi")
    private String osi;

    @Schema(description = "出票时间", example = "2024-11-04 18:27:00")
    private LocalDateTime issueTime;

    @Schema(description = "pnr内容", example = "pnr内容")
    private String pnrContent;

    @Schema(description = "原文", example = "")
    private String xml;

    @Schema(description = "航段信息")
    private List<AirRtRouteRespDTO> routes;

    @Schema(description = "乘客信息")
    private List<AirRtPassengerRespDTO> passengers;

    @Schema(description = "价格信息")
    private List<AirRtPriceRespDTO> prices;
}
